package com.googlecode.gaal.data.api;

import java.util.Collection;

public interface Multiset<E> extends Collection<E> {

    public int getQuantity(E element);

    /**
     * 
     * Returns true if this multiset is a subset of the specified multiset. That
     * is, if all elements of this multiset are also present in the specified
     * multiset at least the same number of times.
     * 
     * @param multiset
     *            - the alleged superset of the current set
     * @return true if this multiset is a subset, false otherwise.
     */
    public boolean isSubset(Multiset<E> multiset);
}
